/**
 * 移除数组 arr 中的所有值与 item 相等的元素
 * - 直接在给定的 arr 数组上进行操作，并将结果返回
 */
function removeWithoutCopy(arr: number[], item: number) {
  // 第一种方法： filter过滤
  // const result= arr.filter(value=>value!==item)
  // 输出
  // return result;

  // 第二种方法：循环遍历，每次都和arr中的首个元素去比较
  const len = arr.length
  for (let index = 0; index < len; index++) {
    if (arr[0] !== item) {
      arr.push(arr[0])
    }

    // 删除第一个
    arr.shift()
  }
  return arr
}

removeWithoutCopy([1, 2, 2, 3, 4, 2, 2], 2)
